package com.hz.ruoyifarmbase.basedata.service.impl;

import com.hz.ruoyifarmbase.basedata.domain.AgrGermBreed;
import com.hz.ruoyifarmbase.basedata.mapper.AgrGermBreedMapper;
import com.hz.ruoyifarmbase.basedata.service.IAgrGermBreedService;
import com.ruoyi.common.core.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;


/**
 * 种质品种Service业务层处理
 *
 * @author ruoyi
 * @date 2025-03-05
 */
@Service
public class AgrGermBreedServiceImpl implements IAgrGermBreedService
{
    @Autowired
    private AgrGermBreedMapper agrGermBreedMapper;

    /**
     * 查询种质品种
     *
     * @param breedId 种质品种主键
     * @return 种质品种
     */
    @Override
    public AgrGermBreed selectAgrGermBreedByBreedId(Long breedId)
    {
        return agrGermBreedMapper.selectAgrGermBreedByBreedId(breedId);
    }

    /**
     * 查询种质品种列表
     *
     * @param agrGermBreed 种质品种
     * @return 种质品种
     */
    @Override
    public List<AgrGermBreed> selectAgrGermBreedList(AgrGermBreed agrGermBreed)
    {
        return agrGermBreedMapper.selectAgrGermBreedList(agrGermBreed);
    }

    /**
     * 新增种质品种
     *
     * @param agrGermBreed 种质品种
     * @return 结果
     */
    @Override
    public int insertAgrGermBreed(AgrGermBreed agrGermBreed)
    {
        agrGermBreed.setCreateTime(DateUtils.getNowDate());
        return agrGermBreedMapper.insertAgrGermBreed(agrGermBreed);
    }

    /**
     * 修改种质品种
     *
     * @param agrGermBreed 种质品种
     * @return 结果
     */
    @Override
    public int updateAgrGermBreed(AgrGermBreed agrGermBreed)
    {
        agrGermBreed.setUpdateTime(DateUtils.getNowDate());
        return agrGermBreedMapper.updateAgrGermBreed(agrGermBreed);
    }

    /**
     * 批量删除种质品种
     *
     * @param breedIds 需要删除的种质品种主键
     * @return 结果
     */
    @Override
    public int deleteAgrGermBreedByBreedIds(Long[] breedIds)
    {
        return agrGermBreedMapper.deleteAgrGermBreedByBreedIds(breedIds);
    }

    /**
     * 删除种质品种信息
     *
     * @param breedId 种质品种主键
     * @return 结果
     */
    @Override
    public int deleteAgrGermBreedByBreedId(Long breedId)
    {
        return agrGermBreedMapper.deleteAgrGermBreedByBreedId(breedId);
    }
}
